#include <iostream>
#include <type_traits>

int main() {
    int array[10][20];

    // 查询数组的维度数
    constexpr size_t dimensions = std::rank<decltype(array)>::value;
    std::cout << "数组的维度数为: " << dimensions << std::endl;  // 输出数组的维度数

    // 查询第一维度的大小
    constexpr size_t first_dim_size = std::extent<decltype(array), 0>::value;
    std::cout << "第一维的大小为: " << first_dim_size << std::endl;  // 输出第一维的元素数量

    // 查询第二维度的大小
    constexpr size_t second_dim_size = std::extent<decltype(array), 1>::value;
    std::cout << "第二维的大小为: " << second_dim_size << std::endl;  // 输出第二维的元素数量

    return 0;
}

